module.exports = {
  up: async (queryInterface) => {
    // 为现有权限设置正确的 module 和 module_name
    const updates = [
      // 用户管理
      { resource: 'user', module: 'user_management', moduleName: '用户管理', isSystem: false },
      
      // 角色管理
      { resource: 'role', module: 'role_management', moduleName: '角色管理', isSystem: false },
      
      // 菜单管理
      { resource: 'menu', module: 'menu_management', moduleName: '菜单管理', isSystem: false },
      
      // 审计日志
      { resource: 'audit_log', module: 'audit_management', moduleName: '审计管理', isSystem: false },
      
      // 字典管理
      { resource: 'dictionary', module: 'dictionary_management', moduleName: '字典管理', isSystem: false },
      
      // 租户管理（系统级）
      { resource: 'tenant', module: 'tenant_management', moduleName: '租户管理', isSystem: true },
      
      // 套餐管理（系统级）
      { resource: 'plan', module: 'plan_management', moduleName: '套餐管理', isSystem: true },
    ];

    for (const update of updates) {
      await queryInterface.sequelize.query(`
        UPDATE permissions 
        SET 
          module = :module, 
          module_name = :moduleName,
          is_system = :isSystem
        WHERE resource = :resource
      `, {
        replacements: {
          resource: update.resource,
          module: update.module,
          moduleName: update.moduleName,
          isSystem: update.isSystem,
        },
      });
    }

    console.log('✅ Updated existing permissions with module information');
  },

  down: async (queryInterface) => {
    // 回滚时设置为默认值
    await queryInterface.sequelize.query(`
      UPDATE permissions 
      SET 
        module = 'other', 
        module_name = '其他',
        is_system = false
    `);
  },
};

